package com.newtouch.bxzs.common.base.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * 三方关系实体类
 * <p>
 * <b>History:</b>
 * <table border="1">
 * <tr>
 * <th>Date</th>
 * <th>Operator</th>
 * <th>Memo</th>
 * </tr>
 * <tr>
 * <td>2021/1/12 13:27</td>
 * <td>Amour</td>
 * <td>Create</td>
 * </tr>
 * </table>
 *
 * @author Amour
 * @version 1.0.0
 * @since 1.0.0
 */
@Data
@TableName("ASSISTANT_USER_CUSTOMER_COOPERATION_COMPANY_USER_MAP")
public class UserCustomerCooperationCompanyUserMap {

    /**用户和客户和合作公司用户关系ID*/
    @TableId(value = "USER_CUSTOMER_COOPERATION_COMPANY_USER_MAP_ID", type = IdType.ASSIGN_UUID)
    private String userCustomerCooperationCompanyUserMapId;

    /**用户工号*/
    @TableField(value = "USER_JOB_NUMBER")
    private String userJobNumber;

    /**用户姓名*/
    @TableField(value = "USER_NAME")
    private String userName;

    /**用户证件类型*/
    @TableField(value = "USER_CERTIFICATE_TYPE")
    private String userCertificateType;

    /**用户证件号码*/
    @TableField(value = "USER_CERTIFICATE_NUMBER")
    private String userCertificateNumber;

    /**客户姓名*/
    @TableField(value = "CUSTOMER_NAME")
    private String customerName;

    /**客户证件类型*/
    @TableField(value = "CUSTOMER_CERTIFICATE_TYPE")
    private String customerCertificateType;

    /**客户证件号码*/
    @TableField(value = "CUSTOMER_CERTIFICATE_NUMBER")
    private String customerCertificateNumber;

    /**客户性别*/
    @TableField(value = "CUSTOMER_SEX")
    private String customerSex;

    /**客户手机号*/
    @TableField(value = "CUSTOMER_PHONE")
    private String customerPhone;

    /**合作公司用户工号*/
    @TableField(value = "COOPERATION_COMPANY_USER_JOB_NUMBER")
    private String cooperationCompanyUserJobNumber;

    /**合作公司用户姓名*/
    @TableField(value = "COOPERATION_COMPANY_USER_NAME")
    private String cooperationCompanyUserName;

    /**合作公司用户证件类型*/
    @TableField(value = "COOPERATION_COMPANY_USER_CERTIFICATE_TYPE")
    private String cooperationCompanyUserCertificateType;

    /**合作公司用户证件号码*/
    @TableField(value = "COOPERATION_COMPANY_USER_CERTIFICATE_NUMBER")
    private String cooperationCompanyUserCertificateNumber;

    /**是否生效*/
    @TableField(value = "IS_VALIDATION")
    private boolean validationFlag;

    /**创建时间*/
    @TableField(value = "CREATE_TIME")
    @JsonFormat(pattern="yyyy-MM-dd hh:mm:ss", locale="zh", timezone="GMT+8")
    private Date createTime;

    /**创建用户ID*/
    @TableField(value = "CREATE_USER_ID")
    private String createUserId;

    /**修改时间*/
    @TableField(value = "UPDATE_TIME")
    @JsonFormat(pattern="yyyy-MM-dd hh:mm:ss", locale="zh", timezone="GMT+8")
    private Date updateTime;

    /**修改用户ID*/
    @TableField(value = "UPDATE_USER_ID")
    private String updateUserId;

    /**企业客户的统一社会信用代码*/
    @TableField(value = "UNIFIED_SOCIAL_CREDIT_CODE")
    private String unifiedSocialCreditCode;

    public void setCreateInfomation(Date createTime,String createUserId,boolean validationFlag){
        this.createTime = createTime;
        this.createUserId = createUserId;
        this.validationFlag = validationFlag;
    }
    public void setUserInfomation(String userJobNumber,String userName,
                                  String userCertificateType,String userCertificateNumber){
        this.userJobNumber = userJobNumber;
        this.userName = userName;
        this.userCertificateType = userCertificateType;
        this.userCertificateNumber = userCertificateNumber;
    }
}
